/* semlib.h */
#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/sem.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>  // 新增，提供 sleep 函数声明
#define DELAY_TIME 2

// 定义信号量编号联合体
union semun {
    int val;
    struct semid_ds *buf;
    unsigned short *array;
};

// 信号量初始化函数
int init_sem(int sem_id, int init_value);
// 从系统中删除信号量
int del_sem(int sem_id);
// 信号量的 P 操作函数
int sem_p(int sem_id);
// 信号量的 V 操作函数
int sem_v(int sem_id);
